// 逆置字符串
// 先整体逆置字符串，再逐单词逆置
// 可以封装一个逆置方法，整体逆置用一次，单词逆置用一次
// 细节：注意单词之间可能不止有一个空格，可能有很多空格

import java.util.Scanner;

public class ReverseString {
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        char[] sArr = in.nextLine().toCharArray();
        int n = sArr.length;
        reverse(sArr, 0, n - 1);
        int left = 0;
        int right = 0;
        while(left < n){
            right = left;
            while(right < n && (sArr[right] != ' ')){
                right++;
            }
            reverse(sArr, left, right - 1);
            while(right < n && sArr[right] == ' '){
                right++;
            }
            left = right;
        }

        StringBuilder ret = new StringBuilder();
        for(char ch : sArr) ret.append(ch);

        System.out.println(ret.toString());
    }

    public static void reverse(char[] sArr, int left, int right){
        while(left < right){
            char ch = sArr[left];
            sArr[left] = sArr[right];
            sArr[right] = ch;
            left++;
            right--;
        }
    }
}
